package movimiento;

/*
 * Clase que modela la posicion de los objetos. 
 * Se representa la misma por medio de un par coordenado.   
 */
public class Posicion {
	private int enX;
	private int enY;

	public Posicion(int enX, int enY) {
		this.enX = enX;
		this.enY = enY;
	}

	public boolean equals(Posicion otraPosicion) {
		return this.enX == otraPosicion.getEnX()
				&& this.enY == otraPosicion.getEnY();
	}

	public double distanciaA(Posicion otraPosicion) {
		double componenteX = Math.pow(otraPosicion.getEnX() - this.enX, 2);
		double componenteY = Math.pow(otraPosicion.getEnY() - this.enY, 2);
		return Math.sqrt(componenteX + componenteY);
	}

	public int getEnX() {
		return enX;
	}

	public void setEnX(int enX) {
		this.enX = enX;
	}

	public int getEnY() {
		return enY;
	}

	public void setEnY(int enY) {
		this.enY = enY;
	}

	@Override
	public String toString() {
		return String.valueOf(enX) + "@" + String.valueOf(enY);
	}

}
